]> dgit.raspbian.org Git - dovecot.git/commit
[PATCH 2/3] doveadm: compress-connect - Don't hang when server rejects COMPRESS
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Mon, 6 Jul 2026 07:17:42 +0000 (07:17 +0000)
committerNoah Meyerhans <noahm@debian.org>
Wed, 16 Sep 2026 19:06:35 +0000 (15:06 -0400)
commitab34aaf2ccf2a3637c74f0b1b516540a71fa7da8
tree0187340357079fb7b140bdeea8506e75ba0498ed
parent588501febebf1ad5f50cc4c7d699145487aa117f
[PATCH 2/3] doveadm: compress-connect - Don't hang when server rejects COMPRESS

After sending a COMPRESS command the client stopped reading stdin and
waited for the server's reply, but it only resumed on an "OK Begin
compression" reply. If the server rejected COMPRESS (e.g. a NO reply for
an unsupported mechanism), compress_waiting was never cleared: the client
waited forever for an OK that never came while the server waited for the
next command, deadlocking the session.

Remember the COMPRESS command tag and treat any tagged reply to it that
isn't the compression-start reply as a rejection, resuming the pipelined
input.

Gbp-Pq: Name 0002-doveadm-compress-connect-Don-t-hang-when-server-reje.patch
src/doveadm/doveadm-compress.c